Skip to content

fix(build): include Wolverine.HealthChecks in the Pack target#2712

Merged
jeremydmiller merged 1 commit into
mainfrom
issue-2704-publish-healthchecks
May 8, 2026
Merged

fix(build): include Wolverine.HealthChecks in the Pack target#2712
jeremydmiller merged 1 commit into
mainfrom
issue-2704-publish-healthchecks

Conversation

@jeremydmiller
Copy link
Copy Markdown
Member

Closes #2704.

Diagnosis

The release workflow (.github/workflows/publish_nugets.yml) runs ./build.sh pack and then a find . -name '*.nupkg' -exec dotnet nuget push over the artifacts. The Pack target in build/build.cs only packs the projects named in a hardcoded nugetProjects array.

Wolverine.HealthChecks was never added to that array. The project is in wolverine.slnx, references core via <ProjectReference>, has the right <PackageId>WolverineFx.HealthChecks</PackageId> metadata, and has tests — but dotnet pack is never invoked on it during a release, so no .nupkg is produced and nothing reaches nuget.org. The reporter ran dotnet add package WolverineFx.HealthChecks and got "no versions available" because no version has ever been pushed, even though every other piece of the pipeline (project, docs page, tests) has been in place since the package was introduced.

Fix

One line: slot Solution.Wolverine_HealthChecks into the Pack target's nugetProjects array next to Solution.Wolverine (parallel naming since both .csprojs sit at the top level of src/).

Verification

$ dotnet pack src/Wolverine.HealthChecks/Wolverine.HealthChecks.csproj \
    --configuration Release --output /tmp/check
$ ls /tmp/check
WolverineFx.HealthChecks.5.38.0.nupkg

The build script itself (build/build.csproj) compiles cleanly with the new Solution.Wolverine_HealthChecks accessor — Nuke's solution-property generator picks it up from the existing <Project Path="src/Wolverine.HealthChecks/Wolverine.HealthChecks.csproj" /> entry in wolverine.slnx.

The next manual run of the Publish Wolverine Nugets workflow will produce and push WolverineFx.HealthChecks.<version>.nupkg.

Closes #2704.

The release workflow (`.github/workflows/publish_nugets.yml`) runs
`./build.sh pack` and then `find . -name '*.nupkg' -exec dotnet nuget
push`. The `Pack` target in `build/build.cs` packs each project named
in a hardcoded `nugetProjects` array — and `Wolverine.HealthChecks`
was never added to it. The project is in `wolverine.slnx`, builds
cleanly, has a `<PackageId>WolverineFx.HealthChecks</PackageId>`
metadata block, and has tests, but no `.nupkg` is ever produced
during a release run, so nothing reaches nuget.org.

One-line addition: `Solution.Wolverine_HealthChecks` slotted next to
`Solution.Wolverine` in the array.

Verified locally with `dotnet pack src/Wolverine.HealthChecks/Wolverine.HealthChecks.csproj
--configuration Release` — produces `WolverineFx.HealthChecks.5.38.0.nupkg`
without errors.
@jeremydmiller jeremydmiller merged commit b888758 into main May 8, 2026
21 checks passed
vgmello pushed a commit to vgmello/momentum that referenced this pull request May 12, 2026
Updated [WolverineFx](https://github.com/jasperfx/wolverine) from 5.36.2
to 5.39.0.

<details>
<summary>Release notes</summary>

_Sourced from [WolverineFx's
releases](https://github.com/jasperfx/wolverine/releases)._

## 5.39.0

## What's Changed
* docs(logging): correct OpenTelemetry AddMeter sample by @​stigrune in
JasperFx/wolverine#2707
* Add nuke/build.schema.json to .gitignore by @​dmytro-pryvedeniuk in
JasperFx/wolverine#2706
* Allow NATS messages without message-type header when
DefaultIncomingMessage is set by @​frankvdb7 in
JasperFx/wolverine#2703
* fix(http): honor [RoutePrefix] when no global prefix is configured by
@​outofrange-consulting in
JasperFx/wolverine#2708
* Fault Events — Auto-Publish `Fault<T>` on Terminal Handler Failure by
@​BlackChepo in JasperFx/wolverine#2695
* Outbox behavior alignment with EF Core transaction model by @​Ferchke7
in JasperFx/wolverine#2677
* Preserve correlation/trace context across Global Partitioning
interceptor (supersedes #​2709) by @​jeremydmiller in
JasperFx/wolverine#2710
* feat(nats): expose JetStream DeliverPolicy on transport + listener by
@​jeremydmiller in JasperFx/wolverine#2711
* fix(build): include Wolverine.HealthChecks in the Pack target by
@​jeremydmiller in JasperFx/wolverine#2712
* feat(sqs): transport-wide DefaultDeadLetterQueueName with per-listener
override precedence by @​jeremydmiller in
JasperFx/wolverine#2714

## New Contributors
* @​stigrune made their first contribution in
JasperFx/wolverine#2707

**Full Changelog**:
JasperFx/wolverine@V5.38.0...V5.39.0

## 5.38.0

## What's Changed
* Disable build-time document generation by @​dmytro-pryvedeniuk in
JasperFx/wolverine#2684
* Add IBrokerHealthProbe + RabbitMQ implementation (CritterWatch#​70) by
@​jeremydmiller in JasperFx/wolverine#2686
* Add Wolverine.HealthChecks for ASP.NET Core IHealthCheck integration
(CritterWatch#​73) by @​jeremydmiller in
JasperFx/wolverine#2687
* Add WolverineHeartbeat emission (CritterWatch#​72) by @​jeremydmiller
in JasperFx/wolverine#2688
* fix(agents): never let self fall into the staleNodes filter (GH-2682)
by @​jeremydmiller in JasperFx/wolverine#2689
* feat(http): api-versioning headers on all responses + multi-version
handler support by @​outofrange-consulting in
JasperFx/wolverine#2683
* fix(advisory-lock): make TryAttainLockAsync idempotent against
re-entrant calls by @​jeremydmiller in
JasperFx/wolverine#2691
* fix(test): lock AllItemsReceived state in batch_processing tests by
@​jeremydmiller in JasperFx/wolverine#2692
* fix(marten): publish IEvent.TenantId verbatim under conjoined tenancy
by @​jeremydmiller in JasperFx/wolverine#2693
* fix(rabbitmq): bind handler queue to every handled-message exchange
under FromHandlerType by @​jeremydmiller in
JasperFx/wolverine#2697
* fix(sqlite): close #​2680 by bumping Weasel to 8.15.1 by
@​jeremydmiller in JasperFx/wolverine#2696
* [1/N] dynamic listeners — foundation only (GH-2685) by @​jeremydmiller
in JasperFx/wolverine#2699
* feat(tracing): opt-in handler-execution diagnostics on
WolverineOptions.Tracking by @​jeremydmiller in
JasperFx/wolverine#2698
* Fix unbounded retry loop on durable receiver shutdown (GH-2671) by
@​jeremydmiller in JasperFx/wolverine#2701
* [2/N] real RDBMS-backed IListenerStore (GH-2685) by @​jeremydmiller in
JasperFx/wolverine#2700
* [3/N] DynamicListenerAgentFamily — cluster-coordinated dynamic
listeners (GH-2685) by @​jeremydmiller in
JasperFx/wolverine#2702


**Full Changelog**:
JasperFx/wolverine@V5.37.2...V5.38.0

## 5.37.2

## What's Changed
* Fixing a regression problem with explicit type discovery getting lost…
by @​jeremydmiller in JasperFx/wolverine#2678
* chore(core): remove Wolverine-specific Roslyn source generator by
@​jeremydmiller in JasperFx/wolverine#2679


**Full Changelog**:
JasperFx/wolverine@V5.37.0...V5.37.2

## 5.37.0

## What's Changed
* The real fix to our EF Core + Outbox problem. Bump to 5.36.2 by
@​jeremydmiller in JasperFx/wolverine#2665
* fix(sqlite): use BEGIN EXCLUSIVE for migration lock; TTL sweep +
heartbeat for non-migration advisory locks by @​mysticmind in
JasperFx/wolverine#2666
* feat(http): support [ApiVersionNeutral] for opt-out endpoints by
@​outofrange-consulting in
JasperFx/wolverine#2660
* feat(critterwatch): polecat outbox listener fix + DocumentStores
capability surface by @​jeremydmiller in
JasperFx/wolverine#2672
* feat(rabbitmq): public API for multi-node cluster endpoints (#​2659)
by @​BlackChepo in JasperFx/wolverine#2664
* fix(marten): GH-2669 alternative — Uri-based ancillary store routing
(no IMessageStore.Id dependency) by @​jeremydmiller in
JasperFx/wolverine#2674


**Full Changelog**:
JasperFx/wolverine@v5.36.1...V5.37.0

Commits viewable in [compare
view](https://github.com/jasperfx/wolverine/commits/V5.39.0).
</details>

[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=WolverineFx&package-manager=nuget&previous-version=5.36.2&new-version=5.39.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

New WolverineFX.HealthChecks NuGet package not published

1 participant